The present invention relates to service disclosing and providing technologies suitable for use in network systems, and particularly to a service disclosing and providing technology having a dependent relationship between services.
It is common practice that the services of a network system comprising a service utilizing device, a service disclosing device, and one or more service providing devices have heretofore been provided to disclose all of those existing on a network.
A conventional typical service disclosing method will be explained with reference to FIGS. 18 through 24. FIG. 18 is a diagram showing one configuration example of a conventional system for disclosing services existing on a network. In FIG. 18, reference numeral 10 denotes a service utilizing device, 30 denotes a service disclosing device, 100 denotes a first service providing device, and 120 denotes a second service providing device. The service utilizing device 10, the service disclosing device 30, the first service providing device 100, and the second service providing device 120 are connected to one another via a network 90.
The service utilizing device 10 includes an input unit 11, an output unit 12, a CPU 13, a memory 14, a communications unit 15, and storage 16. A service utilizing program 25 and a service inquiry program 23 are programs stored in the storage 16 and executed by the CPU 13 after they have been read into the memory 14.
The service disclosing device 30 includes an input unit 31, an output unit 32, a CPU 33, a memory 34, a communications unit 35, and storage 36. A service inquiry processing program 41 and a service detection program 42 are programs stored in the storage 36 and executed by the CPU 33 after they have been read into the memory 34.
The first service providing device 100 includes an input unit 101, an output unit 102, a CPU 103, a memory 104, a communications unit 105, and a storage 106. A first service program 111 and a service registration program 112 are programs stored in the storage 106 and executed by the CPU 103 after they have been read into the memory 104.
The second service providing device 120 includes an input unit 121, an output unit 122, a CPU 123, a memory 124, a communications unit 125, and storage 126. A second service program 131 and a service registration program 132 are respectively programs stored in the storage 126 and executed by the CPU 123 after they have been read into the memory 124.
FIG. 19 shows service information 44 stored in the storage 36 of the service disclosing device 30. The service information 44 has, as data, a service ID 44-1 for identifying each service, a type 44-2 representing the type of service, and an address 44-3 representing the position of each service on a network. In the conventional service disclosing method, the services that have been registered in the service information 44 are all disclosed.
The flow of a process up to the registration of the services in the service information 44 will next be explained using FIGS. 20 and 21.
FIG. 20 is a diagram showing the flow of a process for registering the first service program 111 of the first service providing device 100 with the service information 44. When the first service program 111 is executed, the service registration program 112 is first started up to execute its registration. The service registration program 112 performs broadcast transmission of a service registration request to the network 90 via the communications unit 105. In doing so, the service detection program 42 being executed on the service disclosing device 30 receives the service registration request via the communications unit 35 and registers the registration-requested services with the service information 44.
FIG. 21 is a diagram showing a process for registering the second service program 131 of the second service providing device 120 in the service information 44. When the second service program 131 is executed, the service registration program 132 is started up to execute its registration in a manner similar to FIG. 20. The service registration program 132 performs broadcast transmission of a service registration request, and the service detection program 42 registers services requested for registration with the service information 44 after it has received the registration request.
The flow of a process up to the utilization of services by the service utilizing device 10 will finally be explained using FIGS. 22 through 24.
FIG. 22 is a diagram showing the flow of a process for allowing the service utilizing program 25 of the service utilizing device 10 to make an inquiry about services on the network. When the service utilizing program 25 is executed, the service inquiry program 23 is started up to make an inquiry about information of available services. The service inquiry program 23 performs broadcast transmission of a service inquiry request to the network 90 via the communications unit 15. In doing so, the service inquiry processing program 41 being executed on the service disclosing device 30 receives a registration request through the communications unit 35 and sends back a list of services that satisfy an inquiry condition of the services registered with the service information 44, as a response message.
The inquiry condition contains the type of service. Thus, in the case of an inquiry for a first type of service, the service inquiry processing program 41 sends back information about the first service program 111. In the case of an inquiry for a second type of service, the service inquiry processing program 41 sends back information about the second service program 131. When the first type and the second type are indicative of the same kind, the service inquiry processing program 41 sends back the information about the first service program 111 and the second service program 131.
FIG. 23 is a diagram showing the flow of a process for allowing the service utilizing program 25 to be served by the first service program 111. The service utilizing program 25 makes an inquiry about the first type of service under the flow of FIG. 22 to thereby obtain the information about the first service program 111. Thereafter, the service utilizing program 25 designates an address for the first service program 111 to request the first service program 111 to execute services and accepts a response obtained as the result of service execution by the first service program 111.
FIG. 24 is a diagram showing the flow of a process for allowing the service program 25 to be served by the second service program 131. The service utilizing program 25 makes an inquiry about the second type of service to thereby obtain address information on the second service program 131. Thereafter, the service utilizing program 25 designates an address for the second service program 131 to request the second service program 131 to execute services and receives a response obtained as the result of service execution by the second service program 131.
Non-Patent Document 1:
E. Guttman and three more inventors, & quot; Service Location Protocol, Version 2 & quot; [online], June 1996, IETF, [retrieved on Dec. 16, 2002], Internet: &lt;URL:http://www.ietf.org/rfc/rfc2608.txt&gt;
When a first service and a second service have a dependent relationship, e.g., when the first service has a security function and permits the provision of a second service only for a user having an access right, and the second service provides substantial service, it is desirable that users are not able to access the second service. According to the prior art, however, the users are able to directly make use of the second service because the service disclosing device discloses all services that meet conditions inquired by the users.